#ifndef _DEFINITIONS_HPP_
#define _DEFINITIONS_HPP_

#include <boost/numeric/ublas/matrix.hpp>
#include <boost/numeric/ublas/vector.hpp>



#define _PRECISION   0.00000001
#define _PRECISION_2  (_PRECISION * _PRECISION)

#define PI (3.14159265358979323)

typedef double  real_t;

typedef boost::numeric::ublas::matrix< real_t> Matrix;
typedef boost::numeric::ublas::vector< real_t> Vector;

typedef boost::numeric::ublas::triangular_adaptor< Matrix, boost::numeric::ublas::lower> Lower;
typedef boost::numeric::ublas::triangular_adaptor< Matrix, boost::numeric::ublas::upper> Upper;



int SIMPE_SIZE = 3;
 
real_t SIMPE_MATRIX[] = { 1.0, 1.0, 1.0, -1.0};
real_t SIMPLE_F[] = { 1.0, 3.0};
real_t SIMPLE_RES[] = { 2.0, -1.0};


#endif
